﻿using System;
namespace Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr {
    
    
    public partial class Vallasvara : global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IVallasvara {
        
        private string @__tYHIVASTUS;
        
        private string @__pEALKIRI;
        
        private System.Collections.Generic.List<Vallasvara.IEHITISType> @__eHITIS = new System.Collections.Generic.List<Vallasvara.IEHITISType>();
        
        public Vallasvara() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public Vallasvara(string @tYHIVASTUS, string @pEALKIRI, System.Collections.Generic.List<Vallasvara.IEHITISType> @eHITIS) {
            this.@__tYHIVASTUS = @tYHIVASTUS;
            this.@__pEALKIRI = @pEALKIRI;
            this.@__eHITIS = @eHITIS;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected Vallasvara(IVallasvara @vallasvara) {
            this.@__tYHIVASTUS = @vallasvara.TYHIVASTUS;
            this.@__pEALKIRI = @vallasvara.PEALKIRI;
            this.@__eHITIS = @vallasvara.EHITIS;
        }
        
        public virtual string TYHIVASTUS {
            get {
                return this.@__tYHIVASTUS;
            }
            set {
                this.@__tYHIVASTUS = value;
            }
        }
        
        public virtual string PEALKIRI {
            get {
                return this.@__pEALKIRI;
            }
            set {
                this.@__pEALKIRI = value;
            }
        }
        
        public virtual System.Collections.Generic.List<Vallasvara.IEHITISType> EHITIS {
            get {
                return this.@__eHITIS;
            }
            set {
                this.@__eHITIS = value;
            }
        }
        
        public partial class EHITISType : IEHITISType {
            
            private string @__eHITID;
            
            private string @__eHRKOOD;
            
            private string @__nIMETUS;
            
            private string @__aADRESS;
            
            private System.Collections.Generic.List<System.String> @__kASUTUSOTSTARBED = new System.Collections.Generic.List<System.String>();
            
            private string @__oMANDILIIK;
            
            private string @__eHITISALUNEPIND;
            
            private string @__sULETUDNETOPIND;
            
            private string @__eSMANEKASUTUS;
            
            private global::Xtee.Riik.Ee.Xsd.Xtee.Url @__buildingURL;
            
            private global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType @__pIIRANGUD;
            
            private global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType @__eHITISEOSAD;
            
            private global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType @__rAJATISEOSAD;
            
            public EHITISType() {
            }
            
            /// <summary>
            /// All parameters
            /// </summary>
            public EHITISType(string @eHITID, string @eHRKOOD, string @nIMETUS, string @aADRESS, System.Collections.Generic.List<System.String> @kASUTUSOTSTARBED, string @oMANDILIIK, string @eHITISALUNEPIND, string @sULETUDNETOPIND, string @eSMANEKASUTUS, global::Xtee.Riik.Ee.Xsd.Xtee.Url @buildingURL, global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType @pIIRANGUD, global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType @eHITISEOSAD, global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType @rAJATISEOSAD) {
                this.@__eHITID = @eHITID;
                this.@__eHRKOOD = @eHRKOOD;
                this.@__nIMETUS = @nIMETUS;
                this.@__aADRESS = @aADRESS;
                this.@__kASUTUSOTSTARBED = @kASUTUSOTSTARBED;
                this.@__oMANDILIIK = @oMANDILIIK;
                this.@__eHITISALUNEPIND = @eHITISALUNEPIND;
                this.@__sULETUDNETOPIND = @sULETUDNETOPIND;
                this.@__eSMANEKASUTUS = @eSMANEKASUTUS;
                this.@__buildingURL = @buildingURL;
                this.@__pIIRANGUD = @pIIRANGUD;
                this.@__eHITISEOSAD = @eHITISEOSAD;
                this.@__rAJATISEOSAD = @rAJATISEOSAD;
            }
            
            /// <summary>
            /// Required parameters
            /// </summary>
            public EHITISType(global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType @pIIRANGUD, global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType @eHITISEOSAD, global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType @rAJATISEOSAD) {
                this.@__pIIRANGUD = @pIIRANGUD;
                this.@__eHITISEOSAD = @eHITISEOSAD;
                this.@__rAJATISEOSAD = @rAJATISEOSAD;
            }
            
            /// <summary>
            /// Copy Constructor
            /// </summary>
            protected EHITISType(IEHITISType @eHITISType) {
                this.@__eHITID = @eHITISType.EHITID;
                this.@__eHRKOOD = @eHITISType.EHRKOOD;
                this.@__nIMETUS = @eHITISType.NIMETUS;
                this.@__aADRESS = @eHITISType.AADRESS;
                this.@__kASUTUSOTSTARBED = @eHITISType.KASUTUSOTSTARBED;
                this.@__oMANDILIIK = @eHITISType.OMANDILIIK;
                this.@__eHITISALUNEPIND = @eHITISType.EHITISALUNEPIND;
                this.@__sULETUDNETOPIND = @eHITISType.SULETUDNETOPIND;
                this.@__eSMANEKASUTUS = @eHITISType.ESMANEKASUTUS;
                this.@__buildingURL = @eHITISType.BuildingURL;
                this.@__pIIRANGUD = @eHITISType.PIIRANGUD;
                this.@__eHITISEOSAD = @eHITISType.EHITISEOSAD;
                this.@__rAJATISEOSAD = @eHITISType.RAJATISEOSAD;
            }
            
            public virtual string EHITID {
                get {
                    return this.@__eHITID;
                }
                set {
                    this.@__eHITID = value;
                }
            }
            
            public virtual string EHRKOOD {
                get {
                    return this.@__eHRKOOD;
                }
                set {
                    this.@__eHRKOOD = value;
                }
            }
            
            public virtual string NIMETUS {
                get {
                    return this.@__nIMETUS;
                }
                set {
                    this.@__nIMETUS = value;
                }
            }
            
            public virtual string AADRESS {
                get {
                    return this.@__aADRESS;
                }
                set {
                    this.@__aADRESS = value;
                }
            }
            
            public virtual System.Collections.Generic.List<System.String> KASUTUSOTSTARBED {
                get {
                    return this.@__kASUTUSOTSTARBED;
                }
                set {
                    this.@__kASUTUSOTSTARBED = value;
                }
            }
            
            public virtual string OMANDILIIK {
                get {
                    return this.@__oMANDILIIK;
                }
                set {
                    this.@__oMANDILIIK = value;
                }
            }
            
            public virtual string EHITISALUNEPIND {
                get {
                    return this.@__eHITISALUNEPIND;
                }
                set {
                    this.@__eHITISALUNEPIND = value;
                }
            }
            
            public virtual string SULETUDNETOPIND {
                get {
                    return this.@__sULETUDNETOPIND;
                }
                set {
                    this.@__sULETUDNETOPIND = value;
                }
            }
            
            public virtual string ESMANEKASUTUS {
                get {
                    return this.@__eSMANEKASUTUS;
                }
                set {
                    this.@__eSMANEKASUTUS = value;
                }
            }
            
            public virtual global::Xtee.Riik.Ee.Xsd.Xtee.Url BuildingURL {
                get {
                    return this.@__buildingURL;
                }
                set {
                    this.@__buildingURL = value;
                }
            }
            
            public virtual global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType PIIRANGUD {
                get {
                    return this.@__pIIRANGUD;
                }
                set {
                    this.@__pIIRANGUD = value;
                }
            }
            
            public virtual global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType EHITISEOSAD {
                get {
                    return this.@__eHITISEOSAD;
                }
                set {
                    this.@__eHITISEOSAD = value;
                }
            }
            
            public virtual global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType RAJATISEOSAD {
                get {
                    return this.@__rAJATISEOSAD;
                }
                set {
                    this.@__rAJATISEOSAD = value;
                }
            }
        }
        
        public interface IEHITISType {
            
            string EHITID {
                get;
                set;
            }
            
            string EHRKOOD {
                get;
                set;
            }
            
            string NIMETUS {
                get;
                set;
            }
            
            string AADRESS {
                get;
                set;
            }
            
            System.Collections.Generic.List<System.String> KASUTUSOTSTARBED {
                get;
                set;
            }
            
            string OMANDILIIK {
                get;
                set;
            }
            
            string EHITISALUNEPIND {
                get;
                set;
            }
            
            string SULETUDNETOPIND {
                get;
                set;
            }
            
            string ESMANEKASUTUS {
                get;
                set;
            }
            
            global::Xtee.Riik.Ee.Xsd.Xtee.Url BuildingURL {
                get;
                set;
            }
            
            global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType PIIRANGUD {
                get;
                set;
            }
            
            global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType EHITISEOSAD {
                get;
                set;
            }
            
            global::Producers.Ehr.Xtee.Riik.Ee.Producer.Ehr.IDataType RAJATISEOSAD {
                get;
                set;
            }
        }
    }
}
